當前位置:首頁 » 編程語言 » 張磊c語言設計第二版課後答案
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

張磊c語言設計第二版課後答案

發布時間: 2022-02-27 21:57:14

Ⅰ 請問誰有c語言程序設計(第二版)課後習題答案,譚浩強的

4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b',想得到以下的輸出格式和結果,請寫出程序(包括定義變數類型和設計輸出)。要求輸出的結果如下:
a=凵3凵凵b=凵4凵凵c=凵5
x=1.200000,y=2.400000,z=-3.600000
x+y=凵3.60凵凵y+z=-1.20凵凵z+x=-2.40
c1='a'凵or凵97(ASCII)
c2='B'凵or凵98(ASCII)

解:
#include <stdio.h>
main()
{ int a,b,c;
long int u,n;
float x,y,z;
char c1,c2;
a=3;b=4;c=5;
x=1.2;y=2.4;z=-3.6;
u=51274;n=128765;
c1='a';c2='b';
printf("\n");
printf("a=%2d b=%2d c=%2d\n",a,b,c);
printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);
printf("x+y=%5.2f y+z=%5.2f z+x=%5.2f\n",x+y,y+z,z+x);
printf("u=%6ld n=%9ld\n",u,n);
printf("c1='%c' or %d(ASCII)\n",c1,c1);
printf("c2='%c' or %d(ASCII)\n",c2-32,c2);
}

4.5 請寫出下面程序的輸出結果:

#include <stdio.h>
main()
{ int a=5,b=7;
float x=67.8564,y=-789.124;
char c='A';
long n=1234567;
unsigned u=65535;
printf("%d%d\n",a,b);
printf("%3d%3d\n",a,b);
printf("%f,%f\n",x,y);
printf("%-10f,%-10f\n",x,y);
printf("%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n",x,y,x,y,x,y);
printf("%e,%10.2e\n",x,y);
printf("%c,%d,%o,%x\n",c,c,c,c);
printf("%ld,%lo,%x\n",n,n,n);
printf("%u,%o,%x,%d\n",u,u,u,u);
printf("%s,%5.3s\n","COMPUTER","COMPUTER");
}

運行結果:(在TC2.0中)
57
凵凵5凵凵7
67.856400,-789.124023
67.856400凵,-789.124023
凵凵凵67.86,凵-789.12,67.8564,-789.1240,67.856400,-789.124023
6.785640e+Ol,凵凵-7.9e+02
A,65,10l,4l
1234567,4553207,d687
65535,177777,ffff,-1
COMPUTER,凵凵COM

4.6 用下面的scanf函數輸入數據,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a'。問在鍵盤上如何輸入?

#include <stdio.h>
main()
{ int a,b;
float x,y;
char c1,c2;
scanf("a=%d凵b=%d",&a,&b);
scanf("%f凵%e",&x,&y);
scanf("凵%c凵%c",&c1,&c2);
printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c\n,a,b,x,y,c1,c2);
}

解:可按如下方式在鍵盤上輸入:
a=3凵b=7↙
8.5凵71.82↙
A凵a↙
輸出為:
a=3,b=7,x=8.500000,y=71.820000,cl=A,c2=a

請注意:在第三個scanf函數雙引號中第一個字元為空格字元。如果沒有這個空格字元,而寫成:
scanf("%c%c,&c1,&c2);
按以上的輸入,輸出就會變成以下兩行:
a=3,b=7,x=8.500000,y=71.820000,cl=
,c2=A
這是因為在輸入完第二行數據後按的回車鍵被作為一個字元送到內存輸入緩沖區中,因此第三個scanf函數中的第一個變數c1讀人了回車符(實際上是回車符的ASCII碼)。第三行輸入的第一個字元A被c2讀取,所以在執行printf函數輸出cl時,就輸出一個回車符,輸出c2時就輸出字元A。我們在程序第三個scanf函數雙引號中第一個字元處放了一個空格字元,這樣第二行末尾輸入的回車符就不會輸入給c1,而是與該空格字元對應,第三行輸入的第一個字元A就被cl讀取。也可以不在scanf函數中加空格,而在第三個函數前加一個getchar函數:getchar(); 用它將前面的回車符「吃掉」。
在一個函數中如果有幾個scanf函數,在輸人數據時往往會出現一些想像不到的情況(例如前面碰到的情況),其中一個重要的原因就是由回車符引起的。C語言很靈活,書上不可能把一切細節都講到,讀者在遇到類似情況時,上機多試驗一下就可以找出規律來。

4.7 用下面的scanf函數輸入數據,使a=10,b=20,c1='A',c2='a',x=1.5,y=-3.75,z=67.8,請問在鍵盤上如何輸入數據?
scanf("%5d%5d%c%c%f%f%*f,%f",&a,&b,&c1,&c2,&x,&y,&z);

解:
#include <stdio.h>
main()
{
int a,b;
float x,y,z;
char cl,c2;
scanf("%5d%5d%c%c%f%f%*f,%f",&a,&b,&cl,&c2,&x,&y,&x);
printf("a=%d,b=%d,c1=%c,c2=%c,x=%6.2f,y=%6.2f,z=%6.2f\n",a,b,c1,c2,x,y,z);
}

運行情況如下:
凵凵凵10凵凵凵20Aa1.5凵-3.75凵1.5,67.8↙ (此行為輸人的數據)
a=10,b=20,cl=A,c2=a,x=凵凵1.50,y=凵-3.75,x=凵67.80 (此行為輸出)

說明:按%5d格式的要求輸入a與b時,要先鍵入三個空格,然後再鍵人10與20。%*f是用來禁止賦值的。在輸入時,對應於%*f的地方,隨意打人了一個數如1.5,該值不會賦給任何變數。

4.8 設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入數據,輸出計算結果,輸出時要求有文字說明,取小數點後2位數字。請編程序。

解:
#include <stdio.h>
main()
{ float pi,h,r,l,s,sq,vq,vz;
pi=3.1415926;
printf("請輸入圓半徑r,圓柱高h:\n");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
vq=3.0/4.0*pi*r*r*r;
vz=pi*r*r*h;
printf("圓周長為:1=%6.2f\n",l);
printf("圓面積為:s=%6.2f\n",s);
printf("圓球表面積為:sq=%6.2f\n",sq);
printf("圓球體積為:sv=%6.2f\n",vq);
printf("圓柱體積為:sz=%6.2f\n",vz);
}

運行結果:
請輸入圓半徑r,圓柱高h;
1.5,3↙
圓周長為:l= 9.42
圓面積為:s= 7.07
圓球表面積為:sq= 28.27
圓球體積為:sv= 7.95
圓柱體積為:sz= 21.21

4.9 輸入一個華氏溫度,要求輸出攝氏溫度。公式為c=5(F-32)/9,輸出要有文字說明,取2位小數。

解:
#include <stdio.h>
main()
{ float c,f;
printf("請輸入一個華氏溫度:\n");
scanf("%f",&f);
c=(5.0/9.0)*(f-32); /*注意5和9要用實型表示,否則5/9的值為0*/
printf("攝氏溫度為:%5.2f\n",c);
}

運行結果:
請輸入一個華氏溫度:
78
攝氏溫度為:25.56

4.10 編程序,用getchar函數讀入兩個字元給cl、c2,然後分別用putchar函數和printf函數輸出這兩個字元。並思考以下問題:(1)變數c1、c2應定義為字元型或整型?抑或二者皆可?(2)要求輸出c1和c2值的ASCII碼,應如何處理?用putchar函數還是printf函數?(3)整型變數與字元變數是否在任何情況下都可以互相代替?如char"c1,c2;" 與"int cl,c2;" 是否無條件地等價?

解:
#include <stdio.h>
main()
{ char c1,c2;
printf("請輸入兩個字元c1,c2:\n");
c1=getchar();
c2=getchar();
printf("用putchar語句輸出結果為:\n");
putchar(c1);
putchar(c2);
printf("\n");
printf("用printf語句輸出結果為:\n");
printf("%c,%c\n",c1,c2);
}

運行結果:
請輸入兩個字元c1,c2:
ab↙
用putchar語句輸出結果為:
ab↙
用printf語句輸出結果為:
a,b

請注意連續用兩個getchar函數時怎樣輸入字元。不應當用以下方法輸入:
a↙
b↙
因為第一行將a和回車符輸入到內存的輸入緩沖區,因此c1得到a,c2得到一個回車符。在輸出c2時就會產生一個回車換行,而不會輸出任何可顯示的字元。在實際操作時,只要輸入了"a↙"後,屏幕顯示馬上從用戶屏切換到TC窗口,程序接著執行下去。因為系統認為用戶已輸入了兩個字元,所以我們連續輸入ab兩個字元然後再按回車鍵,就保證了c1和c2分別得到字元a和b。

回答思考問題:
(1) c1和c2可以定義為字元型或整型,二者皆可。
(2) 在printf函數中用%d格式符輸出,即:
printf("%d,%d\n",c1,c2);
(3) 字元變數在計算機內佔一個位元組,而整型變數占兩個位元組,因此整型變數在可輸出字元的范圍內(ASCII碼為0~255之間的字元)是可以與字元數據互相轉換的。如果整數在此范圍外,則不能代替,請分析以下三個程序。

程序1:(4-10-1.c)
#include <stdio.h>
main()
{ int c1,c2; /*定義為整型*/
printf("請輸入兩個整數c1,c2:\n");
scanf("%d,%d",&c1,&c2);
printf("按字元輸出結果為:\n");
printf("%c,%c\n",c1,c2);
printf("按ASCII碼輸出結果為:\n");
printf("%d,%d\n",c1,c2);
}

運行結果:
請輸入兩個整數c1,c2:
97,98↙
按字元輸出結果為:
a,b
按ASCII碼輸出結果為:
97,98
程序2:(4-10-2.c)
#include <stdio.h>
main()
{ char c1,c2; /* 定義為字元型*/
int i1,i2; /* 定義為整型 */
printf("請輸入兩個字元c1,c2:\n");
scanf("%c,%c",&c1,&c2);
i1=c1; /* 將字元型賦值給整型變數*/
i2=c2;
printf("按字元輸出結果為:\n");
printf("%c,%c\n",i1,i2); /* 將整型變數按字元輸出*/
printf("按整數輸出結果為:\n");
printf("%d,%d\n",c1,c2); /* 將字元變數按整型輸出*/
}

運行結果:
請輸入兩個字元c1,c2:
a,b↙
按字元輸出結果為:
a,b
按整數輸出結果為:
97,98
程序3:(4-10-3.c)
#include <stdio.h>
main()
{ char c1,c2;/* 定義為字元型 */
char i1,i2;/* 定義為整型 */
printf("請輸入兩個整數i1,i2:\n");
scanf("%c,%c",&i1,&i2);
c1=i1; /* 將整數賦給字元變數 */
c2=i2;
printf("按字元輸出結果為:\n");
printf("%c,%c\n",c1,c2);
printf("按整數輸出結果為:\n");
printf("%d,%d\n",c1,c2);
}

運行結果:
請輸入兩個整數i1,i2:
289,330↙
按字元輸出結果為:
!,J
按整數輸出結果為:
33,74

請注意c1和c2是字元變數,只佔一個位元組,只能存放0~255范圍內的整數,而現在輸入給i1和i2的值已超過0~255的范圍,所以只將i1和i2在內存中兩個位元組的低8位賦給c1和c2。可以看到,289-255=33,330-255=74;而與ASCII碼33和74相應的字元為"!"
另外,團IDC網上有許多產品團購,便宜有口碑

Ⅱ 譚浩強C語言程序設計 第二版 課後習題答案

說實在的你還是把替題調出來的好,他的書我都不知道扔哪去了……
\(^o^)/~

Ⅲ c語言程序設計教程第二版課後答案 李麗娟

思路島課後習題答案網里邊有這個答案,里邊答案很多,可能不太好找,使用搜索條,直接搜索書名就行!

Ⅳ C語言程序設計 第二版 課後答案 (張磊 馮偉昌...

有兩種方式:
第一種:選「文件」,然後選「C/C++ Source File」。

第二種:選「工程」,然後選「Win32 Console Application」,完成後,然後再按第一種方式建立文件。

Ⅳ c語言程序設計第二版(向艷主編)習題的參考答案 急求!紫皮的那個!

好像沒有答案阿。

http://www.tup.tsinghua.e.cn/book/Showbook.asp?CPBH=038324-01&DJ=33

Ⅵ 張磊 c語言程序設計第二版 課後題答案

http://www.jingpinke.com/resource/download?uuid=ff808081-21e7ff8b-0121-e8010f80-6b25&objectId=oid:ff808081-21e7ff8b-0121-e8010f80-6b26
只找到了課件,沒找到答案

Ⅶ 有沒有c語言程序設計第二版 (羅朝盛)的課後答案啊

Ⅷ c語言程序設計(第二版)張磊版課後答案

.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#include <windows.h>
#include <stdio.h>
#include <malloc.h>
#include <winbase.h>
#include <process.h>

void Search()
{
char temp[100];
char buffer[2];
char result[100];
printf("請輸入要查詢的單詞:\n");
scanf("%s",&temp);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=GetPrivateProfileString(buffer,temp,0,result,100,"./date.ini");
if(ret>0)
printf("%s\n\n\n\n\n",result);
else
printf("對不起,沒有您要查找的單詞.\n\n\n\n\n");
}

void InsertItem()
{
char temp[100];
char buffer[2];
char result[100];
printf("請輸入要插入的單詞:\n");
scanf("%s",&temp);
printf("請輸入單詞的解釋:\n");
getchar();
scanf("%s",&result);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=WritePrivateProfileString(buffer,temp,result,"./date.ini");
if(ret=0)
printf("插入失敗。\n\n\n\n\n");
else
printf("插入成功。\n\n\n\n\n");
}

int main(int argc, char* argv[])
{
int index;
main:
printf("**************MENU***************\n\n");
printf(" 1 英譯漢\n");
// printf("2 漢譯英\n");
printf(" 2 插入新的詞條\n");
// printf(" 3 刪除已有詞條\n");
printf(" 3 清空屏幕\n");
printf(" 4 退出\n\n");
printf("**********************************\n");
do{
printf("請選擇操作(1~4):\n");
scanf("%d",&index); /*輸入選擇項*/
}while(index<0||index>5); /*選擇項不在0~4之間重輸*/
switch(index)
{
case 1:
Search();
goto main;
break;
case 2:
InsertItem();
goto main;
break;
case 3:
system("cls");
goto main;
break;
case 4:
return 0;
break;
default:
break;
}
return 0;
}

輸出:

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
1
請輸入要查詢的單詞:
bad
adj. 劣質的,有害的,壞的,不利的,不健康的,嚴重的

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
2
請輸入要插入的單詞:
cat
請輸入單詞的解釋:

插入成功。

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
1
請輸入要查詢的單詞:
cat


**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
4
Press any key to continue
滿意請採納。

Ⅸ c語言程序設計答案 清華大學出版社第二版

大學學習資料免費下載網 有(下載不用積分點數之類)

點擊「各版本教材課後答案與習題詳解」里的「C語言」就可以下載啦!!!

內含:

譚浩強C語言程序設計習題參考解答
和配套 C程序設計題解與上機指導 答案

參考資料:大學學習資料免費下載網(哲學、法學、文學、理學、工學、農學、醫學、管理學等考研資料、等級考試、課後答案等資料全集)

Ⅹ 誰有《c語言程序設計》第三版張磊著課後答案

http://resource.jingpinke.com/download?uuid=ff808081-21e7ff8b-0121-e8010f80-6b25&objectId=oid:ff808081-21e7ff8b-0121-e8010f80-6b26