2 wsunny111 WSunny111 于 2017.01.07 18:27 提问

新手请教C语言问题 找不出代码的错误 感谢

第一行为一个整数n(n 接下来的2*n行,每2行一组,分别表示一部电影的名字和票房,其中名字部分长度 #include
int main()
{
int n;
scanf("%d",&n);
int i,j,ti[n],t=0;
char s[n][50];
for(i=0;i<n;i++)
{
printf("Enter the amount of the ticket:");
scanf("%d",&ti[i]);
printf("Enter the name of the film:");
for(j=0;s[i][j]!='\0';j++)
{
scanf("%c",&s[i][j]);
}
}
for(i=0;i<n;i++)
{
if(t<ti[i]) t=i;
}
for(i=0;i<50;i++)
{
printf("%c",s[t][i]);
}
}

5个回答

computerfeiwu
computerfeiwu   2017.01.07 19:06
已采纳

#include
#include
int main()
{

int i,j,ti[100],t=0;//数组要一开始就分配好长度,不能那样子定义

char s[100][50];
for(i=0;i<100;i++)
{
printf("Enter the amount of the ticket:");
scanf("%d",&ti[i]);
printf("Enter the name of the film:");
for(j=0;s[i][j]!='\0';j++)
{
scanf("%c",&s[i][j]);
}
}
for(i=0;i<100;i++)
{
if(t<ti[i]) t=i;
}
for(i=0;i<50;i++)
{
printf("%c",s[t][i]);
}
}

qq_34381516
qq_34381516 回复Zindow: 11
11 个月之前 回复
Zindow
Zindow 回复WSunny111: C99以后可以使用变长数组(我经常这样做啊)
11 个月之前 回复
WSunny111
WSunny111 不好意思追问一下,这道题的要求是先要输入一个数字 表明将输入的电影的数目,请问应该怎样做?
11 个月之前 回复
computerfeiwu
computerfeiwu 回复WSunny111: 不客气哈哈哈
11 个月之前 回复
WSunny111
WSunny111 感谢
11 个月之前 回复
qq_36952125
qq_36952125   2017.01.07 19:04

萌新 但感觉是字符串的输入输出错了(%s)?等了半天也没见人回答只好猜测一下了 如果说错了表怪我 我只是萌新

computerfeiwu
computerfeiwu   2017.01.07 19:07

记得给分啊拜托我很穷的

Zindow
Zindow   2017.01.07 19:28

题意麻烦再说清楚一点,关于你那个ti[n]的,这个是变长数组,C99以后可以使用。

Mrtwofly
Mrtwofly   2017.01.08 20:54

ti[n]是个变长数组 C99以后 是可以使用的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!