程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> c語言-給出一批整數,分析每個整數中的每個數字,求每個數字出現的字數。

c語言-給出一批整數,分析每個整數中的每個數字,求每個數字出現的字數。

編輯:編程綜合問答
給出一批整數,分析每個整數中的每個數字,求每個數字出現的字數。

#include
#include
#include
#define SIZE sizeof(int)
int main()
{
int num_str[32],count[10],*p,*head,*pt;
int n,i,num;
scanf("%d",&n); //給出整數個數
for(i=0;i<10;i++)
count[i]=0;
p=(int *)malloc(n*SIZE);
head=p;
for(;p<head+n;p++) //輸入每個整數的值
scanf("%d",p);

// for(p=head;p<head+n;p++) //調試時能顯示每個整數
// printf("%d ",*p);
for(p=head;p<head+n;p++)
{
num=*p;
//printf("%d ",num);
sprintf(num_str,"%d",num); //提示錯誤在這步
pt=num_str;
while(pt!='\0')
{
switch(*pt-'0')
{
case 0:count[0]++;break;
case 1:count[1]++;break;
case 2:count[2]++;break;
case 3:count[3]++;break;
case 4:count[4]++;break;
case 5:count[5]++;break;
case 6:count[6]++;break;
case 7:count[7]++;break;
case 8:count[8]++;break;
case 9:count[9]++;break;
}
}
}
for(i=0;i<10;i++)
printf("%d-%d\n",i,count[i]);
return 0;
}
圖片說明

最佳回答:


圖片說明

您程序中的num_str 是整型指針,sprintf的參數只能為char型指針。

cc19940727
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved