用C语言编写程序:输入一个人的名字、年龄、工资并在最后输出来。

如题所述

struct imfomation{
char name[20];
int age;
int salary;
};
#include "stdio.h"
void main()
{
struct imfomation a;//a为结构体变量
printf("请输入姓名:\n");
gets(a.name);
printf("请输入年龄:\n");
scanf("%d",&a.age);
printf("请输入工资:\n");
scanf("%d",&a.salary);
printf("姓名:%s\n年龄:%d\n工资:%d\n",a.name,a.age,a.salary);
}追问

加多条程序:名字的如果超过3个字就退出循环

追答

你是要输入很多人的信息,那就要用数组了,然后名字的超过三个字的就不用继续了,你这里的3个字如果是中文的话,需要6位,因为一个汉字是是四个字节,这些都是自己写的 ,给个辛苦分吧
struct imfomation{
char name[20];
int age;
int salary;
};
#include
#include
void main()
{
struct imfomation a[10];//a为结构体变量
int i=0,j,n; //n表示总共多少人的信息
printf("请输入你要输入信息的总人数n:");
scanf("%d",&n);
for(i=0;i3)
break;
}
for(j=0;j<=i;j++)
printf(" %d 姓名:%s\n年龄:%d\n工资:%d\n",j+1,a[j].name,a[j].age,a[j].salary);
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-01
#include<stdio.h>
#define p printf
main()
{
int i=0,j;
char c[20];
int score[3];
p("请输入姓名年龄工资");
scanf("%s",c);
for(i=0;i<3;i++)
{
scanf("%d",&score[i]);
}

p("\n");

p("姓名\t年龄\t工资\t\n");
p("%s\t",c);
p("%d\t",score[1]);
p("%d\t",score[2]);
p("%d\t",score[3]);

}追问

加多条程序:名字的如果超过3个字就退出循环

追答

#include
#include
#define p printf
main()
{
int i=0,j;
char c[1];
int score[3];
p("请输入姓名年龄工资");
scanf("%s",c);
if(strlen(c)<=3)
{
for(i=0;i<3;i++)
scanf("%d",&score[i]);

p("\n");

p("姓名\t年龄\t工资\t\n");
p("%s\t",c);
p("%d\t",score[1]);
p("%d\t",score[2]);
p("%d\t",score[3]);
}