蒻姬★彡 2021-09-18 12:01 采纳率: 100%
浏览 41
已结题

程序while第一个循环执行不了怎么回事

#include <stdio.h>
int main(){
int a,c,e,h,x,v,z;
int g = 0;
int b = 1;
int d;
int y = 1;
int f = 10;
scanf("%d",&a);// 个数
while(a >= b){
scanf("%d",&c);
if (c == 0){
printf("0");
}
else{
for (d=1;d<=c;d*=10) {
//e = c / d % f;
g+=1;
//printf("%d ",g);
}
}
h = g;
g = 0;
for (x = 1;x<h;x++){
y = y * 10;
//printf("%d ",y);
}
for (z = 1;z <= h;y /= 10){
v = c / y % f;
printf("%d ",v);
}

    b+=1;
    //printf("%d\n",b);
}
return 0;

}

  • 写回答

3条回答 默认 最新

  • qzjhjxj 2021-09-18 12:55
    关注

    修改如下,供参考:

    #include <stdio.h>
    int main() {
        int a, c, e, h, x, v, z;
        int g = 0;
        int b = 1;
        int d;
        int y = 1;
        int f = 10;
        scanf("%d", &a);// 个数
        while (a >= b) {
            scanf("%d", &c);
            if (c == 0) {
                printf("0");
            }
            else {
                for (d = 1; d <= c; d *= 10) {
                    //e = c / d % f;
                    g += 1;
                    //printf("%d ",g);
                }
            }
            h = g;
            //g = 0;      //修改
            for (x = 1; x < h; x++) {
                y = y * 10;
                //printf("%d ",y);
            }
            for (z = 1; z <= h; y /= 10,z++) {  //修改
                v = c / y % f;
                printf("%d ", v);
            }
            g = 0;     //修改
            y = 1;      //修改 
            b += 1;
            //printf("%d\n",b);
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月18日

悬赏问题

  • ¥15 求解决为什么json数据完整,却解析失败
  • ¥15 打开Smart schedule运行examples/transformer-xl/scripts/run_enwik8_base_moe.sh 报错
  • ¥15 求一个C# sm4 加密解密的代码
  • ¥15 想做个网络加速器,怎么实现
  • ¥20 centos7下载mysql提示DNS解析异常
  • ¥20 vx转账功能对方不能领取
  • ¥15 vue2+codemirror 运行后页面光标太大了
  • ¥15 pdfjs库如何在前端实现打印、旋转等功能
  • ¥15 combobox数据绑定问题
  • ¥15 maven打包时,为什么有的依赖打不进去包