永发信息网

一个C语言编程的问题

答案:5  悬赏:50  手机版
解决时间 2021-02-12 03:13
我初学c语言,有一道题是这样的:
编写一个程序,输入名字,在比名字宽3个字符的字段内打印它。编程工具是VS2010,但编出来总是提示错误,我编的程序是这样的:
#include
#include
int main(void)
{
char name;

printf("Please enter your name:\n");
scanf("%s",name);

int n = strlen(name);

printf("\"%*s\"",n+3,name);
getch();
return 0;
}
最后,想问个额外的问题,我学的书是Primer Plus C,他们的网站是www.samspublishing.com,这书的答案说在这网上有,但在哪里呢?
最佳答案
你的代码错误原因是你的name是一个char型的,你要输入的是一个名字,名字是字符串,要用字符数组来存,你把开始的char name ;改成char name[20];就行了。另外return上面的getch()函数在头文件conio.h里面,不在stdio.h里面,所以你可以在最前面前面写上一个#include或者你可以直接把getch()删掉
全部回答
请将编译器的报错情况列出来吧。 百度搜索一下“C Primer Plus 习题”就能找到了^_^
char name;你定义的name只能赋一个字符,定义成数组吧比你输入的名字长一点的,比如:char name[10]; 书的话你自己在百度文库搜搜看吧,可能会有。

已经给你解答了。

无错误,

望采纳为满意。

写了二十多分钟呢。

#include <stdio.h>
int main()
{
 int m,n,i,j;
 float a[1000][10];
 float sum=0;
 printf("请输入学生数和课程数\n");
 scanf("%d%d",&m,&n);
 printf("请分别输入每个学生的成绩\n");
 for (i=0;i<m;i++)
 {
  for (j=0;j<n;j++)
  {
   scanf("%f",&a[i][j]);
  }
 }
 printf("每个学生的成绩如下:\n");
 for (i=0;i<m;i++)
 {
  for (j=0;j<n;j++)
  {
   printf("%2.0f\t",a[i][j]);
  }
  printf("\n");
 }
 for (j=0;j<n;j++)
 {
  for (i=0;i<m;i++)
  {
   sum+=a[i][j];
  }
  
  a[0][j]=sum/m;
  sum=0;
 }
 printf("每门功课的平均分如下:\n");
 for (j=0;j<n;j++)
 {
  printf("%2.1f\t",a[0][j]);
 }
 return 0;
}

你定义的是字符变量char name; 但是scanf("%s",name);输入的是字符串%s。 printf("\"%*s\"",n+3,name);这个是不是错了,\"代表一个双引号字符,%*s格式说明错了吧 getch(); 函数没有调用,没有定义也没有声明。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
桌面图标都变成快捷方式 除了我的电脑回收站
轮船喷水的地方
鸡爪有几种做法 鸡爪怎么做好吃
超爱欧美气场范打扮,就像欧美超模的打扮的女
关于细胞的说法,错误的是A. 细胞内的膜结构
全自动洗衣机不来电是什么原因
第1食间上上签串串香怎么去啊,有知道地址的
长沙远儒红木装饰有限公司厂长是谁?
此题用正弦定理,是正弦定理,怎么做,必采。
以上农业工具和技术的使用反映了中国古代农业
我的梦想是一名老师四年级英语一分钟演讲稿
大鱼子怎么吃有营养
张家口宣化双盈机械有限公司我想知道这个在什
美术生就业前景和发展趋势如何,本人16年高考
Let it be这是啥意思.
推荐资讯
主动拾音器和被动拾音器的区别和具体属性
《明日歌》里的三对反义词30分钟内回答,追加1
东直门中医医院火龙灸
买家少发了一件退货淘宝已经退款没有重量怎么
china mobile 账号密码
绵阳欣瑞商贸有限公司我想知道这个在什么地方
喷了腋梦香之后怎么感觉腋下粘粘的,还有点凉
海信厨卫电器黄楼专卖店这个地址在什么地方,
干厂房钢构赚钱么?跪求华夏炎黄子孙呢?
我升级下电脑 可惜我没钱 我该怎么办?
下列关于资本成本的表述正确的有()。A.从投
河南省和黑龙江省都是我国产粮大省.两省相比,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?