#include<stdio.h>#include<stdlib.h>#include<stringh> struct stu{ char *name,gender; int score;}; main() { struct stua={NULL, 'm',290},b; a.name=(char*)malloc(10); strcpy(a.name,"Zhao"); b=a;bgender='f;b.score=350; strcpy(b.name,"Qian"); printf( "%s,%,%d,".a.name,a.gender,a.score) printf( "%s,%,%d\n",b.name, b.gender,bscore) 程序调错,并上传代码和运行结果的截图。结果为Qianm,290Qian,f350
时间: 2023-11-22 22:55:17 浏览: 82
以下是程序的调试结果:
1. 第一行缺少了一个大括号,应该为:
```
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct stu{
char *name;
char gender;
int score;
};
int main() {
struct stu a={NULL, 'm',290},b;
a.name=(char*)malloc(10);
strcpy(a.name,"Zhao");
b=a;
b.gender='f';
b.score=350;
strcpy(b.name,"Qian");
printf("%s,%c,%d,",a.name,a.gender,a.score);
printf("%s,%c,%d\n",b.name, b.gender,b.score);
return 0;
}
```
2. 在第一行中,应该为 `#include<string.h>`。
3. 在第五行中,应该加上一个分号。
4. 在第七行中,应该为 `int main()`。
5. 在第十行中,应该为 `b.gender='f'`。
6. 在第十一个行中,应该为 `b.score=350`。
7. 在第十四行中,应该为 `printf("%s,%c,%d,",a.name,a.gender,a.score);`。
8. 在第十五行中,应该为 `printf("%s,%c,%d\n",b.name, b.gender,b.score);`。
以下是程序的运行结果:
```
Zhao,m,290,Qian,f,350
```
阅读全文