C语言程序设计(郑莉)课后习题答案

内容发布更新时间 : 2025/7/5 0:35:45星期一 下面是文章的全部内容请认真阅读。

public:

SimpleCircle(); SimpleCircle(int);

SimpleCircle(const SimpleCircle &); ~SimpleCircle() {}

void SetRadius(int); int GetRadius()const;

private: int *itsRadius; };

SimpleCircle::SimpleCircle() {

itsRadius = new int(5); }

SimpleCircle::SimpleCircle(int radius) {

itsRadius = new int(radius); }

SimpleCircle::SimpleCircle(const SimpleCircle & rhs) {

int val = rhs.GetRadius(); itsRadius = new int(val); }

int SimpleCircle::GetRadius() const {

return *itsRadius; }

int main() {

SimpleCircle CircleOne, CircleTwo(9);

cout << \cout << \return 0; }程序运行输出: CircleOne: 5 CircleTwo: 9

6-21 编写一个函数,统计一个英文句子中字母的个数,在主程序中实现输入、输出。

解: 源程序:

#include #include

int count(char *str) {

int i,num=0;

for (i=0; str[i]; i++) {

if ( (str[i]>='a' && str[i]<='z') || (str[i]>='A' && str[i]<='Z') ) num++; }

return num; }

void main() {

char text[100];

cout << \输入一个英语句子:\gets(text);

cout << \这个句子里有\个字母。\endl; }

程序运行输出: 输入一个英语句子: It is very interesting! 这个句子里有19个字母。

6-22 编写函数int index(char *s, char *t),返回字符串t 在字符串s中出现的最左边的位置,如果在s中没有与t匹配的子串,就返回-1。 解: 源程序:

#include

int index( char *s, char *t) {

int i,j,k;

for(i = 0; s[i] != '\\0'; i++) {

for(j = i, k = 0; t[k] != '\\0' && s[j] == t[k]; j++, k++) ;

26

if (t[k] =='\\0') return i; }

return -1; }

void main() { int n;

char str1[20],str2[20]; cout << \输入一个英语单词:\cin >>

>>灞曞紑鍏ㄦ枃<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi