『壹』 c語言問題 統計不同數字的個數。
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inta[30];
intnum=0;
inti=0;
intn=0;
intc;
for(c=0;c<20;c++)
{
scanf("%d",&a[c]);
}
for(n=0;n<20;n++)
{
//for(i=n+1;a[i]!=NULL;i++)//a[i]!=NULL,a[i]是int類型,怎麼和NULL比較,這是什麼邏輯
for(i=n+1;i<20;i++)
//if(a[i]==a[n])//也不能這么判斷,如果555,num=3,而不是num=2,只判斷不同數字即可
//{
//num++;
//}
if(a[i]==a[n])
break;
if(i==20)//a[n]和後面的每一個數字都不一樣,不同的數字加1
{
num++;
}
}
//num=20-num;
printf("%d",num);
return0;
}
『貳』 c語言問題 統計不同數字個數
/*
由鍵盤輸入20個整數(由空格分隔開),統計不同數字個數
*/
#include <stdio.h>
int main()
{
 int num[20] = {0};
 int i=0;
 for( ;i<20;++i )
 {
  scanf("%d",&num[i]);
 }
 int size = 0;
 int isfind = 0;
 for( i=0;i<20;++i )
 {
  int j = 0;
  for( ;j<i;++j )
  {
   if( num[j] == num[i] )
   {
    isfind = 1;
    break;
   }
  }
  if(  isfind == 1 )
  {
   ++size;
   isfind = 0;
  }
 }
 printf("\n%d\n",size );
 return 0;
}
『叄』 c語言 for 循環 數據統計問題:從鍵盤輸入一批任意數量的整數,統計其中不大於100的非負數數值的個數。
你的程序不管是不是負數a都會增加
continue;是執行下一次循環但是同時a也增加了並不會因為coninue而沒增加
只需在判斷b是否會負數的地方a--就可以達到要的效果,代碼如下:
#include <stdio.h>
void main()
{
 long int a, b;
 for(a=0; b!=0; a++)
 {
  printf("please input interal numbers and input 0 to stop:");
  scanf("%ld", &b);
  if (b<0)
  {
   a--;
   continue;
  }
  printf("\n");
 }
 printf("suitable number: %d\n", a-1);
}
『肆』 請問c語言當中,如何統計數字各自出現的次數
實現代碼:
#include <stdio.h>
int main() {
int num = 0, i = 0;
printf("請輸入一個整數:");
scanf("%d", &num);
int array[10] = {};
while(num) {
array[num % 10]++; //讓數組下標代表所判斷的數字
num /= 10;
}
for (i = 0; i < 10; i++) {
if (array[i] != 0)
printf ("%d有%d個 ", i, array[i]);
return 0;
}

(4)c語言中統計問題擴展閱讀:
printf用法:
printf()函數的調用格式為:printf("&lt;格式化字元串&gt;",&lt;參量表&gt;)。
其中格式化字元串包括兩部分內容:一部分是正常字元,這些字元將按原樣輸出;另一部分是格式化規定字元,以"%"開始,後跟一個或幾個規定字元,用來確定輸出內容格式。
參量表是需要輸出的一系列參數,其個數必須與格式化字元串所說明的輸出參數個數一樣多,各參數之間用","分開,且順序一一對應,否則將會出現意想不到的錯誤。
比如:
inta=1234;
printf("a=%d\n",a);
輸出結果為a=1234。
