幫忙看看哪錯了?
題目如下:
幸運彩票
彩票的號碼有 6 位數字,若一張彩票的前 3 位上的數之和等于后 3 位上的數之和,則稱這張彩票是幸運的。本題就請你判斷給定的彩票是不是幸運的。
輸入格式:
輸入在第一行中給出一個正整數 N(≤ 100)。隨后 N 行,每行給出一張彩票的 6 位數字。
輸出格式:
對每張彩票,如果它是幸運的,就在一行中輸出 You are lucky!;否則輸出 Wish you good luck.。
輸入樣例:
2
233008
123456
輸出樣例:
You are lucky!
Wish you good luck.
#include "stdio.h"
int main()
{
int n,a[100][6],i,j,sum1 = 0, sum2 = 0;
scanf("%d",&n);
for( i = 0 ; i < n ; i++ )
scanf("%d",&a[i]);
for( i = 0 ; i < n ; i++ )
{
sum1 = 0, sum2 = 0;
for( j = 0 ; j < 6 ; j++ )
{
if( j <= 2 )
sum1 += a[i][j];
else
sum2 += a[i][j];
}
if( sum1 == sum2 )
printf("You are lucky!\n");
else
printf("Wish you good luck.\n");
}
return 0;
}
uj5u.com熱心網友回復:
#include <stdio.h>
int main()
{
#if 0
int i, j;
int num, n, sum1, sum2;
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &num);
j = sum1 = 0;
while (j < 3) {
sum1 += num % 10;
num /= 10;
j++;
}
sum2 = 0;
while (num) {
sum2 += num % 10;
num /= 10;
}
printf("sum = %d, sum2 = %d\n", sum1, sum2);
if (sum1 == sum2) {
printf("You are lucky!\n");
} else {
printf("Wish you good luck.\n");
}
}
#else
#define MAX_NUMS 100
int n,a[MAX_NUMS];
int i,j,sum1 = 0, sum2 = 0;
scanf("%d",&n);
if (n > MAX_NUMS)
n = MAX_NUMS;
for( i = 0 ; i < n ; i++ )
scanf("%d", &a[i]);
for( i = 0 ; i < n ; i++ )
{
sum1 = 0, sum2 = 0;
for( j = 0 ; j < 6 ; j++ )
{
if( j <= 2 )
sum1 += a[i] % 10;
else
sum2 += a[i] % 10;
a[i] /= 10;
}
if( sum1 == sum2 )
printf("You are lucky!\n");
else
printf("Wish you good luck.\n");
}
#endif
return 0;
}
供參考~
uj5u.com熱心網友回復:
for( i = 0 ; i < n ; i++ )scanf("%1d",&a[i]);
uj5u.com熱心網友回復:
整數需要處理,不能直接取過來用,看你定義應該是想定義一個空放一個數字,一個數放六個地址里,但是這樣是沒法做的,就算你定義char單個輸進來字符也需要處理轉化成數字才能計算,要么就是int型別數字分開存盤,但是那你就是存了六個數字不是一個數字了uj5u.com熱心網友回復:
那也不對啊?
uj5u.com熱心網友回復:
char可以,2樓說的不對啊,
uj5u.com熱心網友回復:
你又在秀


uj5u.com熱心網友回復:
供參考:#include "stdio.h"
int add(int n)
{
int sum=0;
while(n){
sum += n%10;
n /= 10;
}
return sum;
}
int main()
{
int n,a[100],i; //j,sum1 = 0, sum2 = 0,a[100][6],
scanf("%d",&n);
for( i = 0 ; i < n ; i++ )
scanf("%d",&a[i]);
for( i = 0 ; i < n ; i++ )
{
if(add(a[i]/1000) == add(a[i]%1000))
printf("You are lucky!\n");
else
printf("Wish you good luck.\n");
}
return 0;
}
uj5u.com熱心網友回復:
強
uj5u.com熱心網友回復:
你不會不是我不對
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/252775.html
標籤:C語言
下一篇:查找指定字符
