牟星火凤凰脱戏视频:请教一下一个C语言程序的问题???在线等,急@

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 05:21:07
请帮忙看下下面的程序,运行不出来,哪里出问题了!谢谢!

main()
{int bb[10],aa[10]={4211,6350,9167,1004,2473,8110,8750,7198,1552,7120};
int i,thou,hun,ten,data,a,b,cnt;
cnt=0;
for(i=0;i<10;i++)

{thou=aa[i]/1000;
hun=aa[i]%1000/100;
ten=aa[i]%1000%100/10;
data=aa[i]%1000%100%10;

a=thou*10+data;
b=hun*10+ten;
if((a!=0&&b!=0&&a%2!=0&&b%2!=0)&&(a%5==0||b%5==0))
bb[cnt++]=aa[i];}

for(i=0;i<cnt;i++)
printf("%6d",bb[i]);
}
把千位数和个位数组成一个新的两位数
百位和十位组成一个两位数
要求新生成得数不能为0,必须为奇数,其中必须有一个数要被5整除

程序没问题,a数组的数选的不好,没有一个满足条件,所以没有输出。
你把第一个数改成4255试试。

要说有问题的话,就是求ten和data的步骤可以简化一下。
ten=aa[i]%100/10;
data=aa[i]%10;

因为你给的十个数当中没有一个数能够满足你的条件,即:
新生成数不为零,为奇数,其中必须有一个被5整除.
如果将aa[10]的第一个元素改为1155,则可得bb[0] = 1155,但还需注意一个问题,必须对bb[]进行初始化,或者再定义一个整形count,在判断语句内对它自增,循环输出时i<count

请问:
这道题要干什么?
是要输出符合要求的aa[]数组中的数吗?
如果是:
#include<stdio.h>
main()
{int bb[10],aa[10]={4211,6350,9167,1004,2473,8110,8750,7198,1552,7120};
int i,thou,hun,ten,data,a,b,cnt;
cnt=0;
for(i=0;i<10;i++)

{
thou=aa[i]/1000;
hun=aa[i]%1000/100;
ten=aa[i]%100/10;
data=aa[i] % 10;

a=thou*10+data;
b=hun*10+ten;
if((a!=0&&b!=0&&a%2!=0&&b%2!=0)&&(a%5==0||b%5==0))
bb[cnt++]=aa[i];}

for(i=0;i<cnt;i++)
printf("%6d\",bb[i]);
}
这个可以
不过好像没满足的

你的 a[]数组中好象没有符合这样条件的数,所以输出不来

他的程序目的,不是求AA数组里面满足条件的数吧~~是要把满足条件的数选出来以后,然后把新组成的数输出出来。
我是这么理解的。。。
不过,看后面大家的答复,该理解不对。。。

没有一个满足条件