#define N 3
struct student{
int num
char name[6]
char sex[5]
int age
double 激颤洞grade
}
struct student 明枯stu[N]
int main()
{
struct student *point[N]
int 洞绝i
for(i=0i<Ni++)
{ point[i]=&stu[i] }
for(i=0i<Ni++)
{ scanf("%d%s%s%d%ld",&stu[i].num,&stu[i].name,&stu[i].sex,&stu[i].age,&stu[i].grade) }
printf("学号 姓名 性别 年龄 成绩\n")
for(i=0i<Ni++)
{ printf("%d\t%s\t%s\t%d\t%ld",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].grade)
printf("\n")
}
return 0
}
你好!
你的两个变量的类型不统一,所以没有输出;
将 int n改成 char n 变成字符类型
后的 %d 改成 %c 接收字符输入
修改态备后的完整代码:
#include<stdio.h>#include<stdlib.h>
int main(){
char n
scanf("%c",&n)
if(n=='帆掘毁a')
printf("good")
system("pause")
return 0
}
如果你想让刚才的程序能执行,要输入 a 的ASC 码才行,散搜就是输入 97,你可以试试
该题选择D答案:1、a定义的是char型,实际上他也可以看做是int型,你试过没有将一个char型的变量用%d的格式输出后,为一个整数,该整数是该字符的ASCII码,是十进制而已。所逗迹以a*c之后的类型为float型
2、a*c+c自然也就是float型了。。那么最后就变为float减去一个double型,因为double型表示的数值精度比较高,那山行并么自然结果也就转换成了double型了,你要明白类型的转换实际上可带逗以看做为数据在内存的对齐。。。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)