A. c語言定義整型數據輸出字元
本身字元類型即為整型的一種,當把大位元組的整型數據類型比如int類型以字元類型的形式輸出時,一般輸出函數會對大位元組整數類型進行截斷操作,它等同於將大位元組整型變數、常量轉換為小位元組的整型變數、常量。比如下面的代碼:
#include<stdio.h>
intmain(void)
{
unsignei=0xffffff61;
printf("%c ",ui);
return0;
}
把unsgined類型作為char類型輸出時,執行的結果是61即小寫字母'a'的ASCII碼值。
B. c語言中實現輸入一個數字字元,然後轉換成整數數字輸出.怎麼做
字元串轉整數可以有兩種方法:
1.使用c語言自帶的庫函數:atoi。
函數原型:int atoi(const char *nptr);
功能:把字元串轉成整型數。
例如:
#include<stdlib.h>
#include<stdio.h>
intmain(void)
{
intn;
char*str="12345";
n=atoi(str);
printf("int=%d ",n);
return0;
}
/*
輸出:
int=12345
*/
2.可以自己編寫一個轉換函數:
#include<stdio.h>
#include<stdlib.h>
intatoi(char*s)
{
intt=0;
while(*s){
t=t*10+*s-'0';
s++;
}
return(t);
}
intmain()
{
chara[]="12345";
intn=atoi(a);
printf("n=%d",n);
return0;
}
/*
輸出:
n=12345
*/
C. c語言中,輸出整型變數a的語句是什麼
有符號短整型short a;
用printf("%hd",a);輸出。
無符號短整型unsigned short a;
用printf("%hu",a);輸出。
有符號整型int a;
用printf("%d",a);輸出。
無符號整型unsigned int a;
用printf("%u",a);輸出。
有符號長整型long a;
用printf("%ld",a);輸出。
無符號長整型unsigned long a;
用printf("%lu",a);輸出。
有符號長長整型long long a;
用printf("%lld",a);輸出。
無符號長長整型unsigned long long a;
用printf("%llu",a);輸出。
此外,對於整數,還可以指定以8進制(%o)、16進制(%x或%X)輸出。
D. C語言中如何輸出長整型數值
在C/C++中,64為整型一直是一種沒有確定規范的數據類型。現今主流的編譯器中,對64為整型的支持也是標准不一,形態各異。一般來說,64位整型的定義方式有long long和__int64兩種(VC還支持_int64),而輸出到標准輸出方式有printf(「%lld」,a),printf(「%I64d」,a),和cout << a三種方式。
本文討論的是五種常用的C/C++編譯器對64位整型的支持,這五種編譯器分別是gcc(mingw32),g++(mingw32),gcc(linux i386),g++(linux i386),Microsoft Visual C++ 6.0。可惜的是,沒有一種定義和輸出方式組合,同時兼容這五種編譯器。為徹底弄清不同編譯器對64位整型,我寫了程序對它們進行了評測,結果如下表。
上表中,正確指編譯通過,運行完全正確;錯誤指編譯雖然通過,但運行結果有誤;無法編譯指編譯器根本不能編譯完成。觀察上表,我們可以發現以下幾點:
long long定義方式可以用於gcc/g++,不受平台限制,但不能用於VC6.0。
__int64是Win32平台編譯器64位長整型的定義方式,不能用於Linux。
「%lld」用於Linux i386平台編譯器,」%I64d」用於Win32平台編譯器。
cout只能用於C++編譯,在VC6.0中,cout不支持64位長整型。
表中最後一行輸出方式中的printint64()是我自己寫的一個函數,可以看出,它的兼容性要好於其他所有的輸出方式,它是一段這樣的代碼:
CPP
void printint64(long long a)
{
if (a<=100000000)
printf("%d ",a);
else
{
printf("%d",a/100000000);
printf("d ",a0000000);
}
}
這種寫法的本質是把較大的64位整型拆分為兩個32位整型,然後依次輸出,低位的部分要補0。看似很笨的寫法,效果如何?我把它和cout輸出方式做了比較,因為它和cout都是C++支持跨平台的。首先printint64()和cout(不清空緩沖區)的運行結果是完全相同的,不會出現錯誤。我的試驗是分別用兩者輸出1000000個隨機數,實際結果是,printint64()在1.5s內跑完了程序,而cout需要2s。cout要稍慢一些,所以在輸出大量數據時,要盡量避免使用。
E. 用C語言編輸入一個整數輸出其位數
獲取輸入數據比較簡單,用scanf即可。
下面給兩個判斷整型數據位數的函數:
1.
直接求int類型數據位數:
int
getlength(const
int
tmp)
{
int
count=0;
while(
tmp/10
)
count++;
return
count;
}
2.
利用字元數組來變通的獲取:
int
getlength(const
int
tmp)
{
char
str[16];
memset(str,
0,
sizeof(str));
sprintf(str,
"%d",
tmp);
return
strlen(str);
}
F. c語言中如何實現輸入一個整數實現倒序輸出
1、新建一個工程和.c文件,輸入頭文件和主函數
G. c語言 輸入一個整數,要求倒序輸出 while語句
可以參考下面的代碼:
#include<stdio.h>
intmain()
{
inti;
scanf("%d",&i);
while(i)
{
printf("%d",i%10);
i/=10;
}
return0;
}
/*
輸出:
12345
54321
*/
(7)c語言整數型輸出語句擴展閱讀:
while是計算機的一種基本循環模式,語法:
C
do <語句> while(<條件>);
while(<條件>) <語句>;
C++
while(<條件>) <語句>;
do <語句> while(<條件>);
注意:do...while 循環是 while 循環的變種。該循環程序在初次運行時會首先執行一遍其中的代碼,然後當指定的條件為 true 時,它會繼續這個循環。
H. c語言長整型怎麼輸出
在C語言中可以通過輸出函數printf中的輸出格式說明符來輸出長整型數值。
具體格式可以參考如下程序段:
longinta=123456789;
printf("%ld",a);//%ld表示按長整型的數據格式輸出變數a,輸出結果為123456789
I. c語言中如何將字元串轉化成整數型並輸出
c語言中,可以使用atoi()函數將字元串轉化成整數型並輸出。
atoi (表示 ascii to integer)是把字元串轉換成整型數的一個函數,應用在計算機程序和辦公軟體中。int atoi(const char *nptr) 函數會掃描參數 nptr字元串,會跳過前面的空白字元(例如空格,tab縮進)等。
如果 nptr不能轉換成 int 或者 nptr為空字元串,那麼將返回 0 。特別注意,該函數要求被轉換的字元串是按十進制數理解的。atoi輸入的字元串對應數字存在大小限制(與int類型大小有關),若其過大可能報錯-1。
(9)c語言整數型輸出語句擴展閱讀:
C語言常用函數:
1、int abs(int i)
返回整型參數i的絕對值。
2、double cabs(struct complex znum)
返回復數znum的絕對值。
3、double fabs(double x)
返回雙精度參數x的絕對值。
4、long labs(long n)
返回長整型參數n的絕對值。
5、double exp(double x)
返回指數函數ex的值。
6、double frexp(double value,int *eptr)
返回value=x*2n中x的值,n存貯在eptr中。
7、double ldexp(double value,int exp)
返回value*2exp的值。
8、double log(double x)
返回logex的值。
9、double log10(double x)
返回log10x的值。
10、double pow(double x,double y)
返回x^y的值。