|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目是输入一串字符串然后输出其中字母
然后我就打出了这么一串
#include<stdio.h>
int main()
{
int a,b,c,i=0,j=0,sum,q[50];
char z[50];
for(i=0;z[i]!='\n'||i<50;i++){
scanf("%d",z[i]);\\先是输出一串字符放到数组里面
}
while(i<50){
if('0'<=z[i]&&z[i]<='9')
q[j]=z[i];\\然后挑出数组中的数字放到另外一个数组
j+=1;
i++;
}
for(;j>0;j--){
sum=sum*10+q[j];\\将这个数组里面的数输出
}
printf("%d",sum);
}
求问哪有问题
有时候输出不了有的时候输出是0
qwq
我猜你是想检出数字然后倒序输出?如果是,答案如下:
#include<stdio.h>
int main()
{
const int a = 10;
int b, c, i = 0, j = 0, sum, q[a];
char z[a];
for (i = 0; i < a; i++) {
scanf_s("%c", &z[i],1); //先是输出一串字符放到数组里面
}
i = 0;
while (i < a) {
if ( z[i]<'0' || z[i]>'9') {
i++;
continue;
}
else
{
q[j] = (int(z[i]) - 48); //q[j] = z[i]; //然后挑出数组中的数字放到另外一个数组
j += 1;
i++;
}
}
sum = 0;
for (; j >= 0; j--) {
if (j <0) {
break;
}
else
{
if (q[j] >= 0 && q[j] <= 9) {
sum = sum * 10 + int(q[j]); //将这个数组里面的数输出
}
}
}
printf("\n\n\n%d", sum);
}
|
|