| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1437 人关注过本帖
标题:有个编程问题,C语言,PAT1002,帮忙看一下谢谢了
取消只看楼主 加入收藏
wzhe800
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2015-9-26
结帖率:80%
收藏
已结贴  问题点数:10 回复次数:2 
有个编程问题,C语言,PAT1002,帮忙看一下谢谢了
#include<stdio.h>
#include<math.h>
int main(){
    int n,s=0,yushu=0,i,a[100];
    scanf("%d",&n);
    while(n!=0){
        yushu=n%10;
        s+=yushu;
        n=n/10;
        }
    for(i=0;s>=10;i++){
        yushu=s%10;
        a[i]=yushu;
        s=s/10;
        }
    a[++i]=s;
    while(i>0){
    yushu=a[i];
    switch(yushu){
            case 0:
                printf("ling ");break;
            case 1:
                printf("yi ");break;
            case 2:
                printf("er ");break;
            case 3:
                printf("san ");break;
            case 4:
                printf("si ");break;
            case 5:
                printf("wu ");break;
            case 6:
                printf("liu ");break;
            case 7:
                printf("qi ");break;
            case 8:
                printf("ba ");break;
            case 9:
                printf("jiu ");break;
            default:
            break;
            }//switch
    i--;
    }
    while(i=0){
    yushu=a[i];
    switch(yushu){
            case 0:
                printf("ling");break;
            case 1:
                printf("yi");break;
            case 2:
                printf("er");break;
            case 3:
                printf("san");break;
            case 4:
                printf("si");break;
            case 5:
                printf("wu");break;
            case 6:
                printf("liu");break;
            case 7:
                printf("qi");break;
            case 8:
                printf("ba");break;
            case 9:
                printf("jiu");break;
            default:
            break;
            }//switch
    i--;
    }
    return 0;
    }
这是浙大PAT B级的 1002一道题。 要求是读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
我在GCC上编的,程序上没错误。代码提交后显示答案错误。
输入562结果是错的,像数字小些就是对的。。
想了很久没看出来哪里出错了。。求大神帮忙看一下。。谢谢了。
搜索更多相关主题的帖子: include C语言 
2016-01-20 21:50
wzhe800
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2015-9-26
收藏
得分:0 
回复 2楼 rjsp
第一次发帖。  不知道该怎么问。 下次会注意,谢谢了。
2016-01-21 19:35
wzhe800
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2015-9-26
收藏
得分:0 
回复 2楼 rjsp
你好可以再问个问题吗。。
for( int ch; ch=getchar(), ch>='0'&&ch<='9'; )
        s += ch-'0';
这条语句。我把它打成下面这样
for( int ch; ch=getchar()&&ch>='0'&&ch<='9'; )
        s += ch-'0';
这样的区别在哪里啊。。
这个中间部分不是条件判断么?  可以输入一个字符的?
2016-01-21 19:56
快速回复:有个编程问题,C语言,PAT1002,帮忙看一下谢谢了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015462 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved