c语言中输入验证程序
1、
#include <stdio.h> #include <stdbool.h> long get_long(void); long square_sum(long num1, long num2); bool get_range(long start, long end, long lower_bound, long upper_bound); int main(void) { long result; const long MIN = -10000L; const long MAX = +10000L; long begin, terminus; printf("the range is -10000 -- +10000.\n"); printf("please input the lower_bound(0 to quit): "); begin = get_long(); printf("please input the upper_bound(0 to quit): "); terminus = get_long(); while(begin != 0 || terminus != 0) { if(get_range(begin, terminus, MIN, MAX)) { printf("please try again.\n"); } else { result = square_sum(begin, terminus); printf("squre sum betweent %ld and %ld is %ld.\n",begin, terminus, result); } printf("please input the lower_bound: "); begin = get_long(); printf("please input the upper_bound: "); terminus = get_long(); } return 0; } long get_long(void) { long num; char ch; while((scanf("%ld", &num)) != 1) { while((ch = getchar()) != '\n') putchar(ch); printf(" is not num.\n"); printf("please input num: "); } return num; } long square_sum(long num1, long num2) { long square_sum; int i; for(i = num1; i <= num2; i++) { square_sum += i * i; } return square_sum; } bool get_range(long start, long end, long lower_bound, long upper_bound) { bool tab = false; if(start > end) { printf("start > end!!!!\n"); tab = true; } if(start < lower_bound || end < lower_bound) { printf("start or end < lower_boudn.!!!!!!\n"); tab = true; } if(start > upper_bound || end > upper_bound) { printf("start or upper > upper_bound.!!!!!\n"); tab = true; } return tab; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律