程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c語言問題-c語言多組數據測試問題?(O_O)

c語言問題-c語言多組數據測試問題?(O_O)

編輯:編程解疑
c語言多組數據測試問題?(O_O)

在下編程大門的新手一枚,遇到了這樣一道題:2016年,小豪喜歡數字6,於是一個數的某一位有數字6他都喜歡(比如2016個位是6,所以小豪喜歡2016這個數),但是小豪討厭9(因為9的顏值太低),任意一個數,只要某個數字是9他都不喜歡(就算這個數有6,比如6699這個數就是小豪不喜歡的)。那麼問題來了,現在給一個a,b,求a到b之間有多少個數是小豪喜歡的。
先輸入一個T表示測試數據組數(T<=50)
每組數據輸入a,b(0 輸出小豪喜歡數的個數。
代碼如下:
#include
void main()
{
long a,b,s,i;
int n,k=0,j,t,m;
while(scanf("%d",&n)==1)
{
s=0;
scanf("%ld%ld",&a,&b);
for(i=a;i<=b;i++)
{
t=i;j=0;
while(t)
{
m=t%10;
t=t/10;
if(m==6)j=1;
if(m==9)
{
j=0;
break;
}
}
s+=j;
}
printf("%ld\n",s);
k++;
if(k>=n)break;
}
}
經過多次測試,發現第二組數據就開始出了問題,猜測應該是初始化的問題,可是經過小白2天時間的思考,並沒有什麼問題(O_O)。這樣的問題已經積累了好幾道題了。實在是無能為力了,希望在這裡找到大神指點迷津讓我開竅。謝謝圖片說明圖片說明

最佳回答:


 #include <stdio.h>
void main()
{
    long a,b,s,i;
    int n,k=0,j,t,m;
    scanf("%d",&n);//修改
    while(n)//修改
    {
        s=0;
        scanf("%ld%ld",&a,&b);
        for(i=a;i<=b;i++)
        {
            t=i;j=0;
            while(t)
            {
                m=t%10;
                t=t/10;
                if(m==6)j=1;
                if(m==9)
                {
                    j=0;
                    break;
                }
            }
            s+=j;
        }
        printf("%ld\n",s);
        k++;
        if(k>=n)break;
        n--;//修改
    }
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved