『壹』 c語言,如何向一個字元數組輸入字元,並列印
int c,i; //c應該改為 char c
while((c=getchar())!=EOF) //c是字元變數,EOF是字元串,不能把字元串賦給字元變數
也可以用scanf();輸入。不過要求輸入的時候字母間不能加空格。
例:scanf("%s",s); //s是數組名,s前不必加&,因為數組名就是該數組的首地址。
最好的字元串輸入輸出形式還是
gets(數組名); //輸入
puts(數組名); //輸出
不過一般用gets();前都要加上
fflush(stdin);清理鍵盤緩沖,因為可能程序中有殘留的回車等。
『貳』 C語言數組列印問題
修改一下字元數組的輸出方法:
代碼如下:
#include<stdio.h>
main()
{
char c[10] = {'c','h','i','n','a'};
int i;
for(i=0; i<10; i++)
printf("%c",c[i]);
return 0;
}
『叄』 C語言中,如何正確列印字元串數組
試一試這種方式:
charname[10][100]={};
intictr;
for(ictr=1;ictr<=10;ictr++)
{
printf(" Number%dnameis:",ictr);
scanf("%s",name[ictr-1]);
}
printf("Names:");
for(ictr=0;ictr<10;ictr++)
{
printf("%s ",name[ictr]);
}
『肆』 c語言中如何讓指針數組中的值輸出
讓指針指著數組中的每一個數地址
然後for循環一次往下指
其中printf為循環體。就
OK了
『伍』 C語言列印數組的內容
%x是將一個整數按照16進制數字列印。而a是一個字元數組的首地址,如果按照%x來列印的話,那就是列印a所在的地址,並不是列印他的內容,所以%010x是沒有辦法列印出樓主需要的結果的。
樓主想列印的是的數組裡面的內容的話,那就只能遍歷列印裡面的內容了。
char* format="%08x-%02x%02x%02x%02x%02x";
memset(b,0,100);
sprintf(b,format,d,a[0],a[1],a[2],a[3],a[4]);這個樣子就可以了,將數組裡面的內容按照16進制列印,每一個佔用2個字元就ok啦。
『陸』 關於c語言中列印數組問題,求大神解答
#include<stdio.h>
#include<malloc.h>
voidfoo()
{
int**p=NULL;
intn,i,j,k=1,line,row;
printf("請輸入矩陣的行數:");
scanf("%d",&n);
if((p=(int**)malloc(sizeof(int**)*n))==NULL)//根據行數分配內存,分配雙指針
{
printf("不能分配內存!!! ");
return;
}
for(i=0;i<n;i++)
{
if((p[i]=(int*)malloc(sizeof(int*)*n))==NULL)//為每一行分配指針,每一行有n個數
{
printf("不能分配內存!!! ");
return;
}
}
//螺旋矩陣思想是:隨著k的增大,矩陣最外圍先被幅值,最外面一圈賦值完成後,再向裡面一層賦值,如此循環
//所以可以按照這個思想,每轉一圈為一個大循環,一直循環下去,直至k<=n*n;
for(i=0,j=0;k<=n*n;i++,j++)
{
for(row=j;row<n-j;row++)
{
p[i][row]=k++;
}
for(line=i+1;line<n-i;line++)
{
p[line][n-j-1]=k++;
}
for(row=n-j-2;row>=j;row--)
{
p[n-i-1][row]=k++;
}
for(line=n-i-2;line>i;line--)
{
p[line][j]=k++;
}
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
printf("%-6d",p[i][j]);
}
printf(" ");
}
for(i=0;i<n;i++)//分別釋放每一行的指針
{
free(p[i]);
p[i]=NULL;
}
free(p);//釋放雙指針
p=NULL;
}
intmain()
{
foo();
return0;
}
『柒』 C語言列印數組的內容
有沒有列印值,如果有列印出數組的值,問題出在getchar();這個函數;
getchar有一個int型的返回值.當程序調用getchar時.程序就等著用戶按鍵.用戶輸入的字元被存放在鍵盤緩沖區中.直到用戶按回車為止(回車字元也放在緩沖區中).當用戶鍵入回車之後,getchar才開始從stdio流中每次讀入一個字元.getchar函數的返回值是用戶輸入的第一個字元的ASCII碼,如出錯返回-1,且將用戶輸入的字元回顯到屏幕.如用戶在按回車之前輸入了不止一個字元,其他字元會保留在鍵盤緩存區中,等待後續getchar調用讀取.也就是說,後續的getchar調用不會等待用戶按鍵,而直接讀取緩沖區中的字元,直到緩沖區中的字元讀完為後,才等待用戶按鍵.