问题及描述:
/*
*Copyright(c++)2015,烟台大学计算机学院
*All rights reserved,
*文件名称:test.cpp
*作 者:程梦莹
*完成日期:2015年9月12日
*版本号:v1.0
*问题描述:计算任一输入的正整数的各位数字之和,并分析算法的时间复杂度
*输入描述:一个整数
*/
#include<stdio.h>
int func(int num)
{
int s=0;
do
{
s+=num%10;
num/=10;
}
while(num);
return(s);
}
void main()
{
int n;
printf("输入一个整数:");
scanf("%d",&n);
printf("各位数字之和:%d\n",func(n));
printf("\n");
}
运行结果:
知识点描述:func(n)的时间复杂度为O(len(n)),len(n)为正整数n的位数,程序的时间复杂度也为O(len(n))。
学习心得:代码太不熟练了